package cn.com.nes.site.service.workOrder.dto;

import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 工单DTO
 *
 * @Author: ShenWei
 * @Date: 2024/05/14/14:58
 */
@Data
public class WorkOrderInfoDTO {
    /**
     * 工单id
     */
    private Long id;

    /**
     * 企业id
     */
    private Long companyId;

    /**
     * 房屋id
     */
    private Long houseId;

    /**
     * 客户id
     */
    private Long clienteleId;

    /**
     * 创建人id
     */
    private Long userId;

    /**
     * 联系人姓名
     */
    private String contact;

    /**
     * 联系人电话
     */
    private String contactPhone;

    /**
     * 任务类型id
     */
    private Long workTypeId;

    /**
     * 紧急程度id
     */
    private Integer emergencyDegreeId;

    /**
     * 设备ids ;  关联设备信息表ids,多个设备使用";"隔开
     */
    private String equipmentIds;

    /**
     * 业务支持人员id
     */
    private Long maintainId;

    /**
     * 业务支持人员工单状态
     */
    private Integer maintainStatus;

    /**
     * 工单服务状态
     */
    private Integer orderServiceStatus;

    /**
     * 状态
     */
    private Byte status;
    private Integer orderStatus;

    /**
     * 逻辑删除:   1 表示删除，0 表示未删除。
     */
    private Byte delete;

    /**
     * 创建时间
     */
    private Long gmtCreate;

    /**
     * 修改时间
     */
    private Long gmtModified;

    /**
     * 描述
     */
    private String desc;

    private Integer handleTypeId;

    private String handleDesc;

    private String images;

    private String address;

    private String xzqhdm;

    private String erroCode;

    private Integer handleMode;

    private Long handleId;

    private Long equipmentCompanyId;

    /**
     * 评分
     */
    private Integer score;

    /**
     * 问题类型id
     */
    private String problemTypeId;

    /**
     * 分配处理机构  0服务中心 1交派科室处理 2暂不分配
     */
    private Integer processorAgencies;

    /**
     * 工单类型 1.维修工单 2.通用工单 3.咨询工单 4.安装工单
     */
    private Byte type;

    /**
     * 满意度 0 不满意 1 满意
     */
    private Byte satisfaction;

    private String externalOrderId;

    private Integer audited;

    private String timeoutType;

    private Integer fines;

    private Long auditorId;

    private String auditComment;

    private BigDecimal longitude;

    private BigDecimal latitude;

    /**
     * 设备质保 质保内（01）质保外（02）、不选（空白字符串）
     */
    private String sb_sfzb;

    /**
     * 咨询工单，咨询类型，字典表consultType
     */
    private String consultType;

    /**
     * 工单问题分类 字典表AppealCategory其中 01代表故障类、02代表售后服务类
     */
    private String appealCategory;

    /**
     * 工单问题分类细类   字典表WorkOrderEvaluation
     */
    private String evaluation;

    private Long ReassignmentId;

    /**
     * 上门维修验证码
     */
    private String verificationCode;

    /**
     * 销售订单id
     */
    private Long saleOrderId;

    /**
     * 系统单id
     */
    private Long priceMasterId;

    /**
     * 热链云客户id
     */
    private String customerId;

    /**
     * 门牌号
     */
    private String houseNumber;

    /**
     * 安装工单名称
     */
    private String workOrderName;

    /**
     * 安装施工状态
     */
    private Integer installState;

    /**
     * 安装日期
     */
    private Date installDate;

    /**
     * 质保年份(年)
     */
    private String qualityGuaranteeYears;

    /**
     * 采购案源
     */
    private Integer procureSource;

    /**
     * 购置资金
     */
    private BigDecimal procureFund;

    /**
     * 约定上门时间-开始
     */
    private Date agreedDoorstepTimeStart;

    /**
     * 约定上门时间-结束
     */
    private Date agreedDoorstepTimeEnd;

    /**
     * 项目id
     */
    private Long projectId;

    /**
     * 热链云客户房屋id
     */
    private Long customerHouseId;

    // 扩展参数
    private String workOrderStateName = "";         // 工单状态名称
    private String createUserName = "";             // 创建人姓名
    private String handleUserName = "";             // 处理人姓名
    private String emergencyDegreeName = "";        // 紧急程度名称
    private String taskTypeName = "";               // 任务类型
    private String orderStatusDesc = "";            // 工单状态描述
    private String orderServiceStatusDesc = "";     // 工单服务状态描述
    private Long callCenterCompanyId;               // 长效管护公司id
}
